home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-11 | 11.8 KB | 563 lines | [TEXT/CWIE] |
- // CModalBars.cp -- dialog methods
-
- #include "CModalBars.h"
-
- #include <UEnvironment.h>
- #include <UReanimator.h>
- #include <URegistrar.h>
- #include <LStream.h>
- #include <LTabGroup.h>
- #include <LPushButton.h>
- #include <LAMPushButtonImp.h>
- #include <LGAPushButtonImp.h>
- #include <LView.h>
- #include <CTabPanelGroup.h>
- #include <LAMTabsControlImp.h>
- #include <LGATabsControlImp.h>
- #include <LScrollBar.h>
- #include <LAMTrackActionImp.h>
- #include <LStdScrollBarImp.h>
- #include <CustomControls.h>
- #include <LSlider.h>
- #include <LGASliderImp.h>
- #include <LLittleArrows.h>
- #include <LGALittleArrowsImp.h>
- #include <LProgressBar.h>
- #include <LGAProgressBarImp.h>
- #include <LChasingArrows.h>
- #include <LAMControlImp.h>
- #include <LGAChasingArrowsImp.h>
- #include <CTextUtils.h>
-
- #include "DModalBarsData.h"
- #include "EverythingCmds.h"
- #include <PP_Messages.h>
-
- const MessageT msgBars = 'Bars';
- const MessageT msgStandard = 'Stad';
- const MessageT msgGraphic = 'Grac';
- const MessageT msgSlider = 'Slir';
- const MessageT msgTickMarks = 'Tics';
- const MessageT msgNonDirectional = 'Nonl';
- const MessageT msgLittleArrows = 'Lits';
- const MessageT msgSpinner = 'Spir';
- const MessageT msgVolumeControl = 'Voll';
- const MessageT msgJimSSlider = 'Jimr';
-
- #define PPob_ModalBarsID 213
- #define RidL_ModalBarsID 213
-
- Boolean CModalBars::sIsRegistered = false;
-
- //----------
- CModalBars* CModalBars::CreateModalBars (
- LCommander* inSuperCommander,
- CommandT inCommand,
- DModalBarsData* inData)
- {
- if (!sIsRegistered) {
- RegisterClass ();
- }
- CModalBars* dlog;
- dlog = ((CModalBars *)LWindow::CreateWindow(PPob_ModalBarsID, inSuperCommander));
- dlog->mCommand = inCommand;
- dlog->SetFromData (inData);
-
- return dlog;
- }
-
- //----------
- #define RegisterClasses(AbstractClass,AMImpClass,GAImpClass) \
- RegisterClass_(AbstractClass); \
- if (useAppearance) { \
- RegisterClassID_(AMImpClass, AbstractClass::imp_class_ID); \
- } else { \
- RegisterClassID_(GAImpClass, AbstractClass::imp_class_ID); \
- }
-
- //----------
- void CModalBars::RegisterClass ()
- {
- Boolean useAppearance = UEnvironment::HasFeature (env_HasAppearance);
-
- RegisterClass_(CModalBars);
-
- // register the pane classes we use
- RegisterClasses (LPushButton, LAMPushButtonImp, LGAPushButtonImp);
- RegisterClass_(LView);
- RegisterClasses (CTabPanelGroup, LAMTabsControlImp, LGATabsControlImp);
- RegisterClasses (LScrollBar, LAMTrackActionImp, LStdScrollBarImp);
- RegisterClasses (CScrollBar, CustomControlImp, CustomControlImp);
- RegisterClasses (LSlider, LAMTrackActionImp, LGASliderImp);
- RegisterClasses (LLittleArrows, LAMTrackActionImp, LGALittleArrowsImp);
- RegisterClasses (LProgressBar, LAMTrackActionImp, LGAProgressBarImp);
- RegisterClasses (LChasingArrows, LAMControlImp, LGAChasingArrowsImp);
- RegisterClasses (CControlPane, CustomControlImp, CustomControlImp);
-
- sIsRegistered = true;
- }
-
- //----------
- CModalBars::CModalBars (
- LStream* inStream)
- : LGADialog (inStream)
- {
- mData = nil;
- }
-
- //----------
- CModalBars::~CModalBars()
- {
- delete mData;
- }
-
- //----------
- // This member function gets called once the containment hierarchy that contains
- // this pane has been built. It gives us a chance to get data members for
- // interesting subviews, and to do other operations now that our subviews exist.
- void CModalBars::FinishCreateSelf()
- {
- LGADialog::FinishCreateSelf();
-
- mOKButton = (LPushButton*) FindPaneByID ('OK ');
-
- mBarsPanel = (CTabPanelGroup*) FindPaneByID ('Bars');
-
- mStandardScroll = (LScrollBar*) FindPaneByID ('Stad');
-
- mGraphicScroll = (CScrollBar*) FindPaneByID ('Grac');
-
- mSliderScroll = (LSlider*) FindPaneByID ('Slir');
-
- mTickMarksScroll = (LSlider*) FindPaneByID ('Tics');
-
- mNonDirectionalScroll = (LSlider*) FindPaneByID ('Nonl');
-
- mLittleArrowsScroll = (LLittleArrows*) FindPaneByID ('Lits');
-
- mSpinnerScroll = (CScrollBar*) FindPaneByID ('Spir');
-
- mVolumeControlScroll = (CScrollBar*) FindPaneByID ('Voll');
-
- mJimSSliderScroll = (CScrollBar*) FindPaneByID ('Jimr');
-
- mStandard2Bar = (LProgressBar*) FindPaneByID ('Sta2');
-
- mIndeterminateBar = (LProgressBar*) FindPaneByID ('Inde');
-
- mChasingArrowsBar = (LChasingArrows*) FindPaneByID ('Chas');
-
- mRectangleBar = (CControlPane*) FindPaneByID ('Rece');
-
- mRoundRectBar = (CControlPane*) FindPaneByID ('Rout');
-
- mBarberPoleBar = (CControlPane*) FindPaneByID ('Bare');
-
- mRoundBarberBar = (CControlPane*) FindPaneByID ('Rour');
-
-
- UReanimator::LinkListenerToControls(this, this, RidL_ModalBarsID);
- // the purpose is to "connect" self to whatever controls
- // that we want to "listen" to
-
- // any additional initialization for your dialog:
-
- }
-
- //----------
- void CModalBars::SetFromData (
- DModalBarsData* inData)
- {
- mData = inData;
- mData->AddListener (this);
-
- mBarsPanel->SetValue (mData->GetBars2 ());
- mStandardScroll->SetValue (mData->GetStandard5 ());
- mGraphicScroll->SetValue (mData->GetGraphic4 ());
- mSliderScroll->SetValue (mData->GetSlider2 ());
- mTickMarksScroll->SetValue (mData->GetTickMarks2 ());
- mNonDirectionalScroll->SetValue (mData->GetNonDirectional2 ());
- mLittleArrowsScroll->SetValue (mData->GetLittleArrows2 ());
- mSpinnerScroll->SetValue (mData->GetSpinner2 ());
- mVolumeControlScroll->SetValue (mData->GetVolumeControl2 ());
- mJimSSliderScroll->SetValue (mData->GetJimSSlider2 ());
- mStandard2Bar->SetValue (mData->GetStandard6 ());
- mIndeterminateBar->SetValue (mData->GetIndeterminate2 ());
- mChasingArrowsBar->SetValue (mData->GetChasingArrows2 ());
- mRectangleBar->SetValue (mData->GetRectangle2 ());
- mRoundRectBar->SetValue (mData->GetRoundRect2 ());
- mBarberPoleBar->SetValue (mData->GetBarberPole2 ());
- mRoundBarberBar->SetValue (mData->GetRoundBarber2 ());
- }
-
- //----------
- DModalBarsData* CModalBars::GetData ()
- {
-
- return mData;
- }
-
- //----------
- void CModalBars::DataChanged (
- long inDataID)
- {
- StopListening ();
-
- if (inDataID == idBars2) {
- mBarsPanel->SetValue (mData->GetBars2 ());
- }
- if (inDataID == idStandard5) {
- mStandardScroll->SetValue (mData->GetStandard5 ());
- }
- if (inDataID == idGraphic4) {
- mGraphicScroll->SetValue (mData->GetGraphic4 ());
- }
- if (inDataID == idSlider2) {
- mSliderScroll->SetValue (mData->GetSlider2 ());
- }
- if (inDataID == idTickMarks2) {
- mTickMarksScroll->SetValue (mData->GetTickMarks2 ());
- }
- if (inDataID == idNonDirectional2) {
- mNonDirectionalScroll->SetValue (mData->GetNonDirectional2 ());
- }
- if (inDataID == idLittleArrows2) {
- mLittleArrowsScroll->SetValue (mData->GetLittleArrows2 ());
- }
- if (inDataID == idSpinner2) {
- mSpinnerScroll->SetValue (mData->GetSpinner2 ());
- }
- if (inDataID == idVolumeControl2) {
- mVolumeControlScroll->SetValue (mData->GetVolumeControl2 ());
- }
- if (inDataID == idJimSSlider2) {
- mJimSSliderScroll->SetValue (mData->GetJimSSlider2 ());
- }
- if (inDataID == idStandard6) {
- mStandard2Bar->SetValue (mData->GetStandard6 ());
- }
- if (inDataID == idIndeterminate2) {
- mIndeterminateBar->SetValue (mData->GetIndeterminate2 ());
- }
- if (inDataID == idChasingArrows2) {
- mChasingArrowsBar->SetValue (mData->GetChasingArrows2 ());
- }
- if (inDataID == idRectangle2) {
- mRectangleBar->SetValue (mData->GetRectangle2 ());
- }
- if (inDataID == idRoundRect2) {
- mRoundRectBar->SetValue (mData->GetRoundRect2 ());
- }
- if (inDataID == idBarberPole2) {
- mBarberPoleBar->SetValue (mData->GetBarberPole2 ());
- }
- if (inDataID == idRoundBarber2) {
- mRoundBarberBar->SetValue (mData->GetRoundBarber2 ());
- }
-
- StartListening ();
- }
-
- //----------
- void CModalBars::ListenToMessage (
- MessageT inMessage,
- void *ioParam)
- {
- switch (inMessage) {
- case msg_OK:
- GetSuperCommander()->ProcessCommand(-mCommand, this);
- break;
-
- case msg_Cancel:
- DoClose();
- break;
-
- case msgDataChanged:
- DataChanged ((long)ioParam);
- break;
-
- case msgBars:
- mData->SetBars2 (mBarsPanel->GetValue ());
- break;
-
- case msgStandard:
- mData->SetStandard5 (mStandardScroll->GetValue ());
- break;
-
- case msgGraphic:
- mData->SetGraphic4 (mGraphicScroll->GetValue ());
- break;
-
- case msgSlider:
- mData->SetSlider2 (mSliderScroll->GetValue ());
- break;
-
- case msgTickMarks:
- mData->SetTickMarks2 (mTickMarksScroll->GetValue ());
- break;
-
- case msgNonDirectional:
- mData->SetNonDirectional2 (mNonDirectionalScroll->GetValue ());
- break;
-
- case msgLittleArrows:
- mData->SetLittleArrows2 (mLittleArrowsScroll->GetValue ());
- break;
-
- case msgSpinner:
- mData->SetSpinner2 (mSpinnerScroll->GetValue ());
- break;
-
- case msgVolumeControl:
- mData->SetVolumeControl2 (mVolumeControlScroll->GetValue ());
- break;
-
- case msgJimSSlider:
- mData->SetJimSSlider2 (mJimSSliderScroll->GetValue ());
- break;
-
-
- default:
- ; // do something
- break;
- }
- }
-
- //----------
- Boolean CModalBars::ObeyCommand (
- CommandT inCommand,
- void* ioParam)
- {
- Boolean cmdHandled = true;
-
- if (inCommand < 0) {
- // modal dialog has finished
-
- switch (-inCommand) {
- }
-
- } else {
- switch (inCommand) {
-
- default:
- cmdHandled = LGADialog::ObeyCommand(inCommand, ioParam);
- break;
- }
- }
-
- return cmdHandled;
- }
-
- //----------
- void CModalBars::FindCommandStatus (
- CommandT inCommand,
- Boolean &outEnabled,
- Boolean &outUsesMark,
- Char16 &outMark,
- Str255 outName)
- {
- outUsesMark = false;
-
- switch (inCommand) {
-
- // +++ Add cases here for the commands you handle
-
- default:
- LGADialog::FindCommandStatus(inCommand, outEnabled,
- outUsesMark, outMark, outName);
- break;
- }
- }
-
- // following functions will be obsoleted
- // retained only for backwards compatibility
- //----------
- Boolean
- CModalBars::GetBarsChoice ()
- {
- return mBarsPanel->GetValue ();
- }
-
- void
- CModalBars::SetBarsChoice (
- Int32 inChoice)
- {
- mBarsPanel->SetValue (inChoice);
- }
-
- //----------
- Boolean
- CModalBars::GetStandardValue()
- {
- return mStandardScroll->GetValue();
- }
-
- void
- CModalBars::SetStandardValue (
- Int32 inValue)
- {
- mStandardScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetGraphicValue()
- {
- return mGraphicScroll->GetValue();
- }
-
- void
- CModalBars::SetGraphicValue (
- Int32 inValue)
- {
- mGraphicScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetSliderValue()
- {
- return mSliderScroll->GetValue();
- }
-
- void
- CModalBars::SetSliderValue (
- Int32 inValue)
- {
- mSliderScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetTickMarksValue()
- {
- return mTickMarksScroll->GetValue();
- }
-
- void
- CModalBars::SetTickMarksValue (
- Int32 inValue)
- {
- mTickMarksScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetNonDirectionalValue()
- {
- return mNonDirectionalScroll->GetValue();
- }
-
- void
- CModalBars::SetNonDirectionalValue (
- Int32 inValue)
- {
- mNonDirectionalScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetLittleArrowsValue()
- {
- return mLittleArrowsScroll->GetValue();
- }
-
- void
- CModalBars::SetLittleArrowsValue (
- Int32 inValue)
- {
- mLittleArrowsScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetSpinnerValue()
- {
- return mSpinnerScroll->GetValue();
- }
-
- void
- CModalBars::SetSpinnerValue (
- Int32 inValue)
- {
- mSpinnerScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetVolumeControlValue()
- {
- return mVolumeControlScroll->GetValue();
- }
-
- void
- CModalBars::SetVolumeControlValue (
- Int32 inValue)
- {
- mVolumeControlScroll->SetValue (inValue);
- }
-
- //----------
- Boolean
- CModalBars::GetJimSSliderValue()
- {
- return mJimSSliderScroll->GetValue();
- }
-
- void
- CModalBars::SetJimSSliderValue (
- Int32 inValue)
- {
- mJimSSliderScroll->SetValue (inValue);
- }
-
- void
- CModalBars::SetStandard2Choice (
- Int32 inChoice)
- {
- mStandard2Bar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetIndeterminateChoice (
- Int32 inChoice)
- {
- mIndeterminateBar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetChasingArrowsChoice (
- Int32 inChoice)
- {
- mChasingArrowsBar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetRectangleChoice (
- Int32 inChoice)
- {
- mRectangleBar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetRoundRectChoice (
- Int32 inChoice)
- {
- mRoundRectBar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetBarberPoleChoice (
- Int32 inChoice)
- {
- mBarberPoleBar->SetValue (inChoice);
- }
-
- void
- CModalBars::SetRoundBarberChoice (
- Int32 inChoice)
- {
- mRoundBarberBar->SetValue (inChoice);
- }
-
-